/**
 * 
 */
package handwritten.character;

import java.util.Hashtable;

import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;

import recognition.input.Input;
import handwritten.gesture.MultiGesture;

/**
 * @author tioz
 *
 */

@XmlRootElement (
	    name = "##default", 
	    namespace = "##default" 
	)
@XmlType (
	    name = "##default", 
	    propOrder = {""}, 
	    namespace = "##default" 
	    //factoryClass = DEFAULT.class, 
	    //factoryMethod = ""
	)

public class ModifiedHWCharacter extends HandWrittenCharacter {

	/**
	 * 
	 */
	private static final long serialVersionUID = -8665909051517054019L;
	
	private Hashtable<Class<? extends Input<?>>,Input<?>> modification = new Hashtable<Class<? extends Input<?>>,Input<?>>();
	
	
	public ModifiedHWCharacter() {
		super();
	}

	/**
	 * @param character
	 * @param gest
	 */
	public ModifiedHWCharacter(String character, MultiGesture gest) {
		super(character, gest);
	}

	
	public ModifiedHWCharacter(String character, MultiGesture gest,Hashtable<Class<? extends Input<?>>,Input<?>> in) {
		super(character, gest);
		modification = in;
	}
	
	@SuppressWarnings("unchecked")
	public void addInput(Input<? extends Input<?>> in)
	{
		modification.put((Class<? extends Input<?>>) in.getClass(),in);
	}
}
